Full source code giải đố hình đơn giản
16.639 lượt xem;
- CreatePuzzleButtonsAndAnimators.cs
- Puzzle Game Controller /
- Scripts /
- Assets /
- project /
1 using System.Collections;
2 using System.Collections.Generic;
3 using UnityEngine;
4 using UnityEngine.UI;
5
6 public class CreatePuzzleButtonsAndAnimators : MonoBehaviour {
7
8 [SerializeField]
9 private LayoutPuzzleButtons layoutPuzzleButtons;
10
11
12 [SerializeField]
13 private Button puzzleButton;
14
15 private int puzzleGame1 = 6;
16 private int puzzleGame2 = 12;
17 private int puzzleGame3 = 18;
18 private int puzzleGame4 = 24;
19 private int puzzleGame5 = 30;
20
21 private List<Button> level1Buttons = new List<Button>();
22 private List<Button> level2Buttons = new List<Button>();
23 private List<Button> level3Buttons = new List<Button>();
24 private List<Button> level4Buttons = new List<Button>();
25 private List<Button> level5Buttons = new List<Button>();
26
27 private List<Animator> level1Anim = new List<Animator>();
28 private List<Animator> level2Anim = new List<Animator>();
29 private List<Animator> level3Anim = new List<Animator>();
30 private List<Animator> level4Anim = new List<Animator>();
31 private List<Animator> level5Anim = new List<Animator>();
32
33 void Awake()
34 {
35 CreateButtons();
36 GetAnimators();
37 }
38
39
40 // Use this for initialization
41 void Start () {
42 AssignButtonsAndAnims();
43 }
44
45 void AssignButtonsAndAnims()
46 {
47 layoutPuzzleButtons.level1Buttons = level1Buttons;
48 layoutPuzzleButtons.level2Buttons = level2Buttons;
49 layoutPuzzleButtons.level3Buttons = level3Buttons;
50 layoutPuzzleButtons.level4Buttons = level4Buttons;
51 layoutPuzzleButtons.level5Buttons = level5Buttons;
52
53 layoutPuzzleButtons.level1Anims = level1Anim;
54 layoutPuzzleButtons.level2Anims = level2Anim;
55 layoutPuzzleButtons.level3Anims = level3Anim;
56 layoutPuzzleButtons.level4Anims = level4Anim;
57 layoutPuzzleButtons.level5Anims = level5Anim;
58
59 }
60
61 void CreateButtons()
62 {
63 for(int i = 0; i < puzzleGame1; i++)
64 {
65 Button btn = Instantiate(puzzleButton);
66 btn.gameObject.name = "" + i;
67 level1Buttons.Add(btn);
68 }
69 for (int i = 0; i < puzzleGame2; i++)
70 {
71 Button btn = Instantiate(puzzleButton);
72 btn.gameObject.name = "" + i;
73 level2Buttons.Add(btn);
74 }
75 for (int i = 0; i < puzzleGame3; i++)
76 {
77 Button btn = Instantiate(puzzleButton);
78 btn.gameObject.name = "" + i;
79 level3Buttons.Add(btn);
80 }
81 for (int i = 0; i < puzzleGame4; i++)
82 {
83 Button btn = Instantiate(puzzleButton);
84 btn.gameObject.name = "" + i;
85 level4Buttons.Add(btn);
86 }
87 for (int i = 0; i < puzzleGame5; i++)
88 {
89 Button btn = Instantiate(puzzleButton);
90 btn.gameObject.name = "" + i;
91 level5Buttons.Add(btn);
92 }
93 }
94
95 void GetAnimators()
96 {
97 for(int i = 0; i < level1Buttons.Count; i++)
98 {
99 level1Anim.Add(level1Buttons[i].GetComponent<Animator>());
100 level1Buttons[i].gameObject.SetActive(false);
101 }
102 for (int i = 0; i < level2Buttons.Count; i++)
103 {
104 level2Anim.Add(level2Buttons[i].GetComponent<Animator>());
105 level2Buttons[i].gameObject.SetActive(false);
106 }
107 for (int i = 0; i < level3Buttons.Count; i++)
108 {
109 level3Anim.Add(level3Buttons[i].GetComponent<Animator>());
110 level3Buttons[i].gameObject.SetActive(false);
111 }
112 for (int i = 0; i < level4Buttons.Count; i++)
113 {
114 level4Anim.Add(level4Buttons[i].GetComponent<Animator>());
115 level4Buttons[i].gameObject.SetActive(false);
116 }
117 for (int i = 0; i < level5Buttons.Count; i++)
118 {
119 level5Anim.Add(level5Buttons[i].GetComponent<Animator>());
120 level5Buttons[i].gameObject.SetActive(false);
121 }
122 }
123 }
2 using System.Collections.Generic;
3 using UnityEngine;
4 using UnityEngine.UI;
5
6 public class CreatePuzzleButtonsAndAnimators : MonoBehaviour {
7
8 [SerializeField]
9 private LayoutPuzzleButtons layoutPuzzleButtons;
10
11
12 [SerializeField]
13 private Button puzzleButton;
14
15 private int puzzleGame1 = 6;
16 private int puzzleGame2 = 12;
17 private int puzzleGame3 = 18;
18 private int puzzleGame4 = 24;
19 private int puzzleGame5 = 30;
20
21 private List<Button> level1Buttons = new List<Button>();
22 private List<Button> level2Buttons = new List<Button>();
23 private List<Button> level3Buttons = new List<Button>();
24 private List<Button> level4Buttons = new List<Button>();
25 private List<Button> level5Buttons = new List<Button>();
26
27 private List<Animator> level1Anim = new List<Animator>();
28 private List<Animator> level2Anim = new List<Animator>();
29 private List<Animator> level3Anim = new List<Animator>();
30 private List<Animator> level4Anim = new List<Animator>();
31 private List<Animator> level5Anim = new List<Animator>();
32
33 void Awake()
34 {
35 CreateButtons();
36 GetAnimators();
37 }
38
39
40 // Use this for initialization
41 void Start () {
42 AssignButtonsAndAnims();
43 }
44
45 void AssignButtonsAndAnims()
46 {
47 layoutPuzzleButtons.level1Buttons = level1Buttons;
48 layoutPuzzleButtons.level2Buttons = level2Buttons;
49 layoutPuzzleButtons.level3Buttons = level3Buttons;
50 layoutPuzzleButtons.level4Buttons = level4Buttons;
51 layoutPuzzleButtons.level5Buttons = level5Buttons;
52
53 layoutPuzzleButtons.level1Anims = level1Anim;
54 layoutPuzzleButtons.level2Anims = level2Anim;
55 layoutPuzzleButtons.level3Anims = level3Anim;
56 layoutPuzzleButtons.level4Anims = level4Anim;
57 layoutPuzzleButtons.level5Anims = level5Anim;
58
59 }
60
61 void CreateButtons()
62 {
63 for(int i = 0; i < puzzleGame1; i++)
64 {
65 Button btn = Instantiate(puzzleButton);
66 btn.gameObject.name = "" + i;
67 level1Buttons.Add(btn);
68 }
69 for (int i = 0; i < puzzleGame2; i++)
70 {
71 Button btn = Instantiate(puzzleButton);
72 btn.gameObject.name = "" + i;
73 level2Buttons.Add(btn);
74 }
75 for (int i = 0; i < puzzleGame3; i++)
76 {
77 Button btn = Instantiate(puzzleButton);
78 btn.gameObject.name = "" + i;
79 level3Buttons.Add(btn);
80 }
81 for (int i = 0; i < puzzleGame4; i++)
82 {
83 Button btn = Instantiate(puzzleButton);
84 btn.gameObject.name = "" + i;
85 level4Buttons.Add(btn);
86 }
87 for (int i = 0; i < puzzleGame5; i++)
88 {
89 Button btn = Instantiate(puzzleButton);
90 btn.gameObject.name = "" + i;
91 level5Buttons.Add(btn);
92 }
93 }
94
95 void GetAnimators()
96 {
97 for(int i = 0; i < level1Buttons.Count; i++)
98 {
99 level1Anim.Add(level1Buttons[i].GetComponent<Animator>());
100 level1Buttons[i].gameObject.SetActive(false);
101 }
102 for (int i = 0; i < level2Buttons.Count; i++)
103 {
104 level2Anim.Add(level2Buttons[i].GetComponent<Animator>());
105 level2Buttons[i].gameObject.SetActive(false);
106 }
107 for (int i = 0; i < level3Buttons.Count; i++)
108 {
109 level3Anim.Add(level3Buttons[i].GetComponent<Animator>());
110 level3Buttons[i].gameObject.SetActive(false);
111 }
112 for (int i = 0; i < level4Buttons.Count; i++)
113 {
114 level4Anim.Add(level4Buttons[i].GetComponent<Animator>());
115 level4Buttons[i].gameObject.SetActive(false);
116 }
117 for (int i = 0; i < level5Buttons.Count; i++)
118 {
119 level5Anim.Add(level5Buttons[i].GetComponent<Animator>());
120 level5Buttons[i].gameObject.SetActive(false);
121 }
122 }
123 }